home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 32 / Mac Magazin and MacEasy Magazine CD - Issue 32.iso / Grafik & Text / OzTeX3.0 / TeX-inputs / LaTeX / contrib / showlabels.sty < prev    next >
Text File  |  1997-03-26  |  3KB  |  139 lines

  1. %%
  2. %% This is file `showlabels.sty',
  3. %% generated with the docstrip utility.
  4. %%
  5. %% The original source files were:
  6. %%
  7. %% showlabels.dtx  (with options: `package')
  8. %% Style to display labels in the margin
  9. \def\filename{showlabels}
  10. \def\fileversion{v1.2a}
  11. \def\filedate{1996/05/12}
  12. \def\docdate{1996/10/04}
  13. \NeedsTeXFormat{LaTeX2e}
  14. \ProvidesPackage{showlabels}[1996/05/12 v1.2a]
  15. \typeout{Package: `showlabels' v1.2a\space<1996/05/12>}
  16. \wlog{Documentation}
  17. \newif\ifSL@noAMS
  18. \expandafter\ifx\csname maketag@@@\endcsname\relax
  19.   \SL@noAMStrue
  20. \else
  21.   \SL@noAMSfalse
  22.   \typeout{with AMS-LaTeX equation tags}
  23. \fi
  24. \ifSL@noAMS
  25.   \let\@@eqnnum=\@eqnnum
  26.   \def\@eqnnum{\@@eqnnum
  27.   \ifx\SL@labeln@me\relax
  28.     \SL@eqnlrtext{???}%
  29.   \else
  30.     \SL@eqnlrtext{\SL@labeln@me}%
  31.     \global\def\SL@labeln@me{\relax}%
  32.   \fi}
  33.   \global\def\SL@labeln@me{\relax}
  34. \else
  35.   \let\@maketag@@@=\maketag@@@
  36.   \def\maketag@@@#1{\@maketag@@@{#1}%
  37.   \ifx\df@label\@empty
  38.   \else
  39.     \SL@eqnlrtext{\df@label}%
  40.   \fi}
  41. \fi
  42. \def\SL@gobblethree#1#2#3{}
  43. \def\prlabelname#1{%
  44. \expandafter\expandafter\expandafter\SL@gobblethree
  45.     \expandafter\string\csname r@#1\endcsname}
  46. \let\@@makecaption\@makecaption
  47. \long\def\@makecaption#1#2{{\def\label##1{{\small\tt
  48. \{\prlabelname{##1}\}\space}\SL@label{##1}}%
  49. \@@makecaption{#1}{#2}}}
  50. \let\SL@label\label
  51. \def\label#1{\@bsphack\SL@label{#1}%
  52.   \ifmmode
  53.     \ifSL@noAMS
  54.       \xdef\SL@labeln@me{\prlabelname{#1}}%
  55.     \fi
  56.   \else
  57.     {\setbox0=\vbox to 0pt{\vss
  58.       \hbox to \columnwidth{\SL@lrtext{#1}}}%
  59.     \dp0=0pt
  60.     \ifvmode
  61.       \nointerlineskip\box0\nobreak
  62.     \else
  63.       \vadjust{\box0\nobreak}%
  64.     \fi}%
  65.   \fi
  66.   \@esphack}
  67. \def\SL@margintext#1{{\small\sl\{#1\}}}
  68. \def\SL@righttext#1{\hfill\rlap{\quad\SL@margintext{#1}}}
  69. \def\SL@lefttext #1{\llap{\SL@margintext{#1}\quad}\hfill}
  70. \def\SL@alternatetext{%
  71.   \if@outerlabels
  72.     \ifodd\c@page
  73.       \let\SL@next\SL@righttext\else
  74.       \let\SL@next\SL@lefttext\fi
  75.   \else
  76.     \ifodd\c@page
  77.       \let\SL@next\SL@lefttext\else
  78.       \let\SL@next\SL@righttext\fi
  79.   \fi
  80.   \SL@next}
  81. \def\SL@twocoltext{%
  82.   \if@firstcolumn
  83.     \let\SL@next\SL@lefttext
  84.   \else
  85.     \let\SL@next\SL@righttext
  86.   \fi
  87.   \SL@next}
  88. \def\SL@eqnrighttext#1{\rlap{\quad\SL@margintext{#1}}}
  89. \def\SL@eqnlefttext #1{\hbox to 0pt{\kern -\columnwidth
  90. \llap{\SL@margintext{#1}\quad}\hss}}
  91. \def\SL@eqnalternatetext{%
  92.   \if@outerlabels
  93.     \ifodd\c@page
  94.       \let\SL@next\SL@eqnrighttext\else
  95.       \let\SL@next\SL@eqnlefttext\fi
  96.   \else
  97.     \ifodd\c@page
  98.       \let\SL@next\SL@eqnlefttext\else
  99.       \let\SL@next\SL@eqnrighttext\fi
  100.   \fi
  101.   \SL@next}
  102. \def\SL@eqntwocoltext{%
  103.   \if@firstcolumn
  104.     \let\SL@next\SL@eqnlefttext
  105.   \else
  106.     \let\SL@next\SL@eqnrighttext
  107.   \fi
  108.   \SL@next}
  109. \newif\if@outerlabels
  110. \@outerlabelstrue
  111. \DeclareOption{outer}{\@outerlabelstrue}
  112. \DeclareOption{inner}{\@outerlabelsfalse}
  113. \ProcessOptions
  114. \if@twocolumn
  115.   \let\SL@lrtext\SL@twocoltext
  116.   \let\SL@eqnlrtext\SL@eqntwocoltext
  117. \else
  118.   \if@outerlabels
  119.     \if@twoside
  120.   \let\SL@lrtext\SL@alternatetext
  121.   \let\SL@eqnlrtext\SL@eqnalternatetext
  122.     \else
  123.       \let\SL@lrtext\SL@righttext
  124.       \let\SL@eqnlrtext\SL@eqnrighttext
  125.     \fi
  126.   \else
  127.     \if@twoside
  128.   \let\SL@lrtext\SL@alternatetext
  129.   \let\SL@eqnlrtext\SL@eqnalternatetext
  130.     \else
  131.       \let\SL@lrtext\SL@lefttext
  132.       \let\SL@eqnlrtext\SL@eqnlefttext
  133.     \fi
  134.   \fi
  135. \fi
  136. \endinput
  137. %%
  138. %% End of file `showlabels.sty'.
  139.